As hardware for reproducing and storing high resolution or high quality video content is being developed and supplied, a need for a video codec for effectively encoding or decoding the high resolution or high quality video content is increasing. According to a conventional video codec, a video is encoded according to a limited encoding method based on a macroblock having a predetermined size.
Image data of a spatial region is transformed into coefficients of a frequency region via frequency transformation. According to a video codec, an image is split into blocks having a predetermined size, discrete cosine transformation (DCT) is performed on each block, and frequency coefficients are encoded in block units, for rapid calculation of frequency transformation. Compared with image data of a spatial region, coefficients of a frequency region are easily compressed. In particular, since an image pixel value of a spatial region is expressed according to a prediction error via inter prediction or intra prediction of a video codec, when frequency transformation is performed on the prediction error, a large amount of data may be transformed to 0. According to a video codec, an amount of data may be reduced by replacing data that is consecutively and repeatedly generated with small-sized data.
A multilayer video codec encodes and decodes a first layer video and at least one second layer video. Amounts of data of the first layer video and the second layer video may be reduced by removing temporal/spatial redundancy and layer redundancy of the first layer video and the second layer video.
For a current block to be predicted, subblock-based prediction using a subblock of which size is equal to or less than that of the current block may be performed. Since the subblock-based prediction is performed, a prediction error may be further decreased, and since lots of data which were transformed with the prediction error become 0, a data mount of a video may be reduced.